Loading [MathJax]/jax/output/CommonHTML/jax.js

Activation Functions (ReLU, Sigmoid, Softmax)

Machine Learning - কেরাস ডিপ লার্নিং (Deep Learning with Keras) Keras তে বেসিক Neural Network তৈরি |
279
279

Activation functions হল নিউরাল নেটওয়ার্কে ব্যবহৃত গুরুত্বপূর্ণ গাণিতিক ফাংশন যা ইনপুট এবং আউটপুট এর মধ্যে সম্পর্ক স্থাপন করে। এগুলি মডেলের সিখন ক্ষমতাকে প্রভাবিত করে এবং নির্ধারণ করে কখন নেটওয়ার্কটি একটি নির্দিষ্ট সিদ্ধান্ত নেবে। এখানে আমরা তিনটি জনপ্রিয় activation function সম্পর্কে আলোচনা করবো: ReLU, Sigmoid, এবং Softmax


1. ReLU (Rectified Linear Unit)

সংজ্ঞা:

ReLU হল একটি খুব জনপ্রিয় activation function যা একটি নিউরাল নেটওয়ার্কে পজিটিভ ইনপুটগুলির জন্য লিনিয়ার আচরণ এবং নেগেটিভ ইনপুটগুলির জন্য শূন্য মান প্রদান করে।

ReLU এর গাণিতিক ফর্ম:

f(x)=max(0,x)

অর্থাৎ, যদি x>0, তবে f(x)=x, আর যদি x0, তবে f(x)=0। এটি একটি খুব সহজ এবং কার্যকরী ফাংশন যা মডেলকে দ্রুত প্রশিক্ষিত হতে সহায়ক।

বৈশিষ্ট্য:

  • Pros:
    • কম্পিউটেশনালভাবে দ্রুত এবং সহজ।
    • গ্র্যাডিয়েন্ট ভ্যানিশিং সমস্যা কমাতে সাহায্য করে।
    • পজিটিভ ইনপুটে খুব ভালো কাজ করে এবং অতি সাধারণভাবে ইনপুটকে "অ্যাকটিভেট" করে।
  • Cons:
    • ডেড নোড: যদি ইনপুটটি শূন্য বা নেগেটিভ হয়, তবে নিউরাল নেটওয়ার্কের নিউরনটি "মারা" যেতে পারে এবং কোনো গ্র্যাডিয়েন্ট প্রবাহিত হয় না (এটি "ডেড রিলু" সমস্যা হতে পারে)।

ব্যবহার:

ReLU প্রধানত হিডেন লেয়ারে ব্যবহার করা হয়, কারণ এটি নন-লিনিয়ার আউটপুট প্রদান করে এবং নিউরাল নেটওয়ার্ককে উচ্চ স্তরের বৈশিষ্ট্য শিখতে সাহায্য করে।


2. Sigmoid

সংজ্ঞা:

Sigmoid ফাংশন একটি নন-লিনিয়ার activation function যা একটি ইনপুট ভ্যালুকে ০ থেকে ১ এর মধ্যে স্কেল করে। এটি সাধারণত বাইনারি ক্লাসিফিকেশন সমস্যায় ব্যবহৃত হয় যেখানে আউটপুট দুটি ক্লাসের মধ্যে একটি হওয়া উচিত।

Sigmoid এর গাণিতিক ফর্ম:

f(x)=11+ex

এটি S-আকৃতির (Sigmoid) কিউভাল করা একটি ফাংশন এবং আউটপুটের মান ০ থেকে ১ এর মধ্যে থাকে, যা সম্ভাবনা হিসেবেও ব্যাখ্যা করা যায়।

বৈশিষ্ট্য:

  • Pros:
    • আউটপুট ০ এবং ১ এর মধ্যে সীমাবদ্ধ থাকে, যা বাইনারি ক্লাসিফিকেশন ক্ষেত্রে ব্যবহার উপযোগী।
    • লিনিয়ার না হওয়ার কারণে এটি আরো জটিল সম্পর্ক শিখতে সক্ষম।
  • Cons:
    • গ্র্যাডিয়েন্ট ভ্যানিশিং: ইনপুটের বড় ভ্যালুর জন্য গ্র্যাডিয়েন্ট ছোট হয়ে যায় (বা ০), যার ফলে প্রশিক্ষণ ধীর হয়ে যেতে পারে।
    • আউটপুট সাধারণত একটি ছোট পরিসরে থাকে, যা কিছু পরিস্থিতিতে শিখন প্রক্রিয়াকে ধীর করে দিতে পারে।

ব্যবহার:

Sigmoid ফাংশনটি সাধারণত আউটপুট লেয়ারে ব্যবহৃত হয়, বিশেষ করে বাইনারি ক্লাসিফিকেশন সমস্যায়।


3. Softmax

সংজ্ঞা:

Softmax একটি activation function যা মূলত মাল্টিক্লাস ক্লাসিফিকেশন সমস্যায় ব্যবহৃত হয়। এটি আউটপুট লেয়ারের জন্য ব্যবহৃত হয় যেখানে একাধিক সম্ভাব্য ক্লাস থাকে এবং এটি প্রতিটি ক্লাসের জন্য একটি সম্ভাবনা প্রদান করে।

Softmax এর গাণিতিক ফর্ম:

f(xi)=exiKj=1exj

এখানে xi হল আউটপুটের i-তম ক্লাসের মান, এবং K হল মোট ক্লাসের সংখ্যা। এটি সকল ক্লাসের জন্য সম্ভাবনার মোট যোগফল ১ করবে।

বৈশিষ্ট্য:

  • Pros:
    • প্রোবাবিলিটি আউটপুট: Softmax আউটপুট একটি বৈধ প্রোবাবিলিটি ডিসট্রিবিউশন প্রদান করে, যা সহজেই ব্যবহার করা যায়।
    • বিভিন্ন ক্লাসের মধ্যে সিদ্ধান্ত নিতে সক্ষম, যেমন ছবি শ্রেণীবদ্ধকরণ বা ভাষা প্রক্রিয়াকরণ।
  • Cons:
    • এটি ভালো প্রশিক্ষণ সাপোর্ট না পেলে ধীর হয়ে যেতে পারে, বিশেষ করে যদি আউটপুট নিউরন অনেক বেশি হয়।
    • বেসিকভাবে মাল্টিক্লাস কনফিগারেশনে এটি একাধিক ক্লাসের মধ্যে সর্বোচ্চ সম্ভাবনা নির্ধারণ করতে ব্যবহৃত হয়, কিন্তু এটি বাইনারি সমস্যায় খুব উপযোগী নয়।

ব্যবহার:

Softmax ফাংশনটি প্রধানত মাল্টিক্লাস ক্লাসিফিকেশন মডেলে আউটপুট লেয়ারে ব্যবহৃত হয়, যেমন চিত্র শ্রেণীবিভাজন বা বিভিন্ন শ্রেণীর মধ্যে নির্বাচিত বিকল্প


সারাংশ

  • ReLU (Rectified Linear Unit): দ্রুত প্রশিক্ষণের জন্য কার্যকর, কিন্তু নেগেটিভ ইনপুটের জন্য "ডেড নোড" সমস্যা থাকতে পারে।
  • Sigmoid: বাইনারি ক্লাসিফিকেশন সমস্যার জন্য উপযুক্ত, তবে গ্র্যাডিয়েন্ট ভ্যানিশিং সমস্যা থাকতে পারে।
  • Softmax: মাল্টিক্লাস ক্লাসিফিকেশন সমস্যার জন্য ব্যবহৃত, এটি প্রতিটি ক্লাসের জন্য একটি প্রোবাবিলিটি প্রদান করে।

প্রতিটি activation function এর নিজস্ব সুবিধা এবং সীমাবদ্ধতা রয়েছে এবং আপনি আপনার মডেল এবং ডেটার উপযুক্ততা অনুযায়ী এগুলো ব্যবহার করবেন।

Content added By
Promotion